// roll pitch yaw
pub fn parse_eular(buf: &[u8]) -> (f64, f64, f64) {
    // 假设每个角度用2个字节表示，低字节在前
    let roll = i16::from_le_bytes([buf[0], buf[1]]) as f64 * 0.01;
    let pitch = i16::from_le_bytes([buf[2], buf[3]]) as f64 * 0.01;
    let yaw = u16::from_le_bytes([buf[4], buf[5]]) as f64 * 0.01;

    
    (roll, pitch, yaw)
}

// lon lat msl
pub fn parse_llm(buf: &[u8]) -> (f64, f64, f64) {
    let lon = i32::from_le_bytes([buf[0], buf[1], buf[2], buf[3]]) as f64 * 1e-7;
    let lat = i32::from_le_bytes([buf[4], buf[5], buf[6], buf[7]]) as f64 * 1e-7;
    let msl = i32::from_le_bytes([buf[8], buf[9], buf[10], buf[11]]) as f64 * 0.001;

    (lon, lat, msl)
}